#pragma once

namespace IOFrame
{
	static CIOContainer *&ioContainer()
	{
		static CIOContainer IOC;
		static CIOContainer *pIOC=&IOC;
		return pIOC;
	}
	static DWORD GetCPUCoreNum()
	{
		SYSTEM_INFO siSysInfo;
		GetSystemInfo(&siSysInfo);
		return siSysInfo.dwNumberOfProcessors;
	}
	static void OutputErrorMessageToDebugConsole()
	{
#ifdef _DEBUG
		TCHAR msgbuf[1001];
		FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM,NULL,GetLastError(),0,msgbuf,1000,NULL);
		OutputDebugString(msgbuf);
#endif
	}
}